# ip存储与读取文件统计ip频率(京东3面题)
# ●生成- - 个大文件ips.txt,要求120000行，每行随即为172.25.254.0/24段的ip
# ●读取ips.txt文件统计这个文件中ip出现频率前10的ip ;
import random
#生成ip地址文件函数
def creat_ip():
    list1 = []
    #开始写入
    with open("ip.txt",'w+') as f :
        for i in range(300):
            ip_tail=random.randint(0,255)
            f.write(f"{'172.25.254.'}{str(ip_tail)}"+'\n')
        f.seek(0,0)
        return  f.readlines()
#统计ip地址出现的前十的次数
def count_ip(name):
    dict1=dict()
    for i in creat_ip():
        #去除换行符
        i=i.strip()
        if i not in dict1:
            dict1[i]=1
        else: dict1[i]+=1
    res = sorted(dict1.items(), key=lambda x:x[1],reverse=True)[:10]
    return  res
print(count_ip('ip.txt'))


